home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-03-15 | 1.6 KB | 46 lines | [TEXT/gamI] |
- ;;;from run-methods.scm
- (define dylan:expt (dylan::generic-fn 'expt two-numbers expt))
-
-
- ;;;from compiler.scm
- (define (thomas file-name . expressions)
- (compile-expression `(BEGIN ,@expressions) #F thomas-rep-module-variables
- (lambda (new-vars preamble-code compiled)
- new-vars ; Not used
- (with-output-to-file file-name
- (lambda ()
- (display "; Output generated by the CRL Thomas->Scheme compiler.")
- (newline)
- (implementation-specific:generate-file
- expressions
- `(begin
- ,@preamble-code
- (dylan::catch-all-conditions
- (lambda () ,compiled))
- (set! thomas-rep-module-variables
- (append ',new-vars thomas-rep-module-variables))
- )))))))
-
- ;;from implementation-specific.scm
- (define make-condition (lambda (x y) (cons x y))) ;let 'em have the args
-
- ;fix ##newline call to supply out (required)
- (define (implementation-specific:enter-debugger dylan-condition)
- ;; implementation-specific:enter-debugger is only called by `break',
- ;; so I label the ##debug-repl with "*** Breakpoint".
- ;; Printing the arguments to `break':
- (##call-with-current-continuation
- (lambda (cont)
- (##sequentially
- (lambda ()
- (let ((out (##repl-out)))
- (##newline out)
- (##write-string
- (dylan-call dylan:condition-format-string dylan-condition)
- out)
- (##newline out)
- (##newline out)
- (##write-string "*** Breakpoint" out)
- (##newline out)
- (##debug-repl cont)))))))
-